package com.chagee.channel.api.service;

import com.chagee.base.utils.SoaResponse;
import com.chagee.channel.api.bo.FileInfoBO;
import com.chagee.channel.api.bo.oss.*;

import javax.validation.constraints.NotNull;

/**
 * @author: chang.jiawei
 * @date: 2024/03/14
 */
public interface IOssServiceApi {

    SoaResponse<String, Void> uploadV2(@NotNull UploadOssRequestV2 request);

    SoaResponse<String, Void> upload(byte[] pic, String fileName);

    /**
     *
     * @param url 文件地址
     * @param fileName 文件名
     * @return
     */
    FileInfoBO uploadFsFile2Oss(String url, String fileName);

    SoaResponse<String, Void> uploadByUrl(UploadOssRequest req);

    /**
     * oss获取签名URL
     */
    SoaResponse<SignedURLRep, Void> signedURL(SignedURLReq req);

	SoaResponse<DocumentConversionRep, Void>  documentConversion(DocumentConversionReq req);
}
